- // MIR for `variant_a::{closure#0}` before DestinationPropagation
+ // MIR for `variant_a::{closure#0}` after DestinationPropagation
  
  fn variant_a::{closure#0}(_1: &mut [closure@$DIR/slice_filter.rs:8:25: 8:39], _2: &&(usize, usize, usize, usize)) -> bool {
      let mut _0: bool;                    // return place in scope 0 at $DIR/slice_filter.rs:+0:40: +0:40
      let mut _3: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:40: +0:56
      let mut _4: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:40: +0:46
      let mut _5: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:50: +0:56
      let mut _6: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:60: +0:76
      let mut _7: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:60: +0:66
      let mut _8: bool;                    // in scope 0 at $DIR/slice_filter.rs:+0:70: +0:76
      let mut _9: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:38
      let mut _10: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:38
      let mut _11: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:38
      let mut _12: &(usize, usize, usize, usize); // in scope 0 at $DIR/slice_filter.rs:+0:26: +0:38
      scope 1 {
          debug a => &((*_9).0: usize);    // in scope 1 at $DIR/slice_filter.rs:+0:27: +0:28
          debug b => &((*_10).1: usize);   // in scope 1 at $DIR/slice_filter.rs:+0:30: +0:31
          debug c => &((*_11).2: usize);   // in scope 1 at $DIR/slice_filter.rs:+0:33: +0:34
          debug d => &((*_12).3: usize);   // in scope 1 at $DIR/slice_filter.rs:+0:36: +0:37
          scope 2 (inlined cmp::impls::<impl PartialOrd for &usize>::le) { // at $DIR/slice_filter.rs:8:40: 8:46
              debug self => &&((*_9).0: usize); // in scope 2 at $SRC_DIR/core/src/cmp.rs:LL:COL
              debug other => &&((*_11).2: usize); // in scope 2 at $SRC_DIR/core/src/cmp.rs:LL:COL
              scope 3 (inlined cmp::impls::<impl PartialOrd for usize>::le) { // at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug self => &((*_9).0: usize); // in scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug other => &((*_11).2: usize); // in scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _13: usize;      // in scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _14: usize;      // in scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
              }
          }
          scope 4 (inlined cmp::impls::<impl PartialOrd for &usize>::le) { // at $DIR/slice_filter.rs:8:60: 8:66
              debug self => &&((*_11).2: usize); // in scope 4 at $SRC_DIR/core/src/cmp.rs:LL:COL
              debug other => &&((*_9).0: usize); // in scope 4 at $SRC_DIR/core/src/cmp.rs:LL:COL
              scope 5 (inlined cmp::impls::<impl PartialOrd for usize>::le) { // at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug self => &((*_11).2: usize); // in scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug other => &((*_9).0: usize); // in scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _15: usize;      // in scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _16: usize;      // in scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
              }
          }
          scope 6 (inlined cmp::impls::<impl PartialOrd for &usize>::le) { // at $DIR/slice_filter.rs:8:50: 8:56
              debug self => &&((*_12).3: usize); // in scope 6 at $SRC_DIR/core/src/cmp.rs:LL:COL
              debug other => &&((*_10).1: usize); // in scope 6 at $SRC_DIR/core/src/cmp.rs:LL:COL
              scope 7 (inlined cmp::impls::<impl PartialOrd for usize>::le) { // at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug self => &((*_12).3: usize); // in scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug other => &((*_10).1: usize); // in scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _17: usize;      // in scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _18: usize;      // in scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
              }
          }
          scope 8 (inlined cmp::impls::<impl PartialOrd for &usize>::le) { // at $DIR/slice_filter.rs:8:70: 8:76
              debug self => &&((*_10).1: usize); // in scope 8 at $SRC_DIR/core/src/cmp.rs:LL:COL
              debug other => &&((*_12).3: usize); // in scope 8 at $SRC_DIR/core/src/cmp.rs:LL:COL
              scope 9 (inlined cmp::impls::<impl PartialOrd for usize>::le) { // at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug self => &((*_10).1: usize); // in scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  debug other => &((*_12).3: usize); // in scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _19: usize;      // in scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
                  let mut _20: usize;      // in scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
              }
          }
      }
  
      bb0: {
          _9 = deref_copy (*_2);           // scope 0 at $DIR/slice_filter.rs:+0:27: +0:28
          _10 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:30: +0:31
          _11 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:33: +0:34
          _12 = deref_copy (*_2);          // scope 0 at $DIR/slice_filter.rs:+0:36: +0:37
-         StorageLive(_3);                 // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
          StorageLive(_4);                 // scope 1 at $DIR/slice_filter.rs:+0:40: +0:46
          StorageLive(_13);                // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _13 = ((*_9).0: usize);          // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageLive(_14);                // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _14 = ((*_11).2: usize);         // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _4 = Le(move _13, move _14);     // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_14);                // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_13);                // scope 3 at $SRC_DIR/core/src/cmp.rs:LL:COL
          switchInt(move _4) -> [0: bb4, otherwise: bb5]; // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
      }
  
      bb1: {
          _0 = const true;                 // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
          goto -> bb3;                     // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
      }
  
      bb2: {
-         StorageLive(_6);                 // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
          StorageLive(_7);                 // scope 1 at $DIR/slice_filter.rs:+0:60: +0:66
          StorageLive(_15);                // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _15 = ((*_11).2: usize);         // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageLive(_16);                // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _16 = ((*_9).0: usize);          // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _7 = Le(move _15, move _16);     // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_16);                // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_15);                // scope 5 at $SRC_DIR/core/src/cmp.rs:LL:COL
          switchInt(move _7) -> [0: bb6, otherwise: bb7]; // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
      }
  
      bb3: {
-         StorageDead(_6);                 // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
-         StorageDead(_3);                 // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
          return;                          // scope 0 at $DIR/slice_filter.rs:+0:76: +0:76
      }
  
      bb4: {
-         StorageDead(_5);                 // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
          StorageDead(_4);                 // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
          goto -> bb2;                     // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
      }
  
      bb5: {
-         StorageLive(_5);                 // scope 1 at $DIR/slice_filter.rs:+0:50: +0:56
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:50: +0:56
          StorageLive(_17);                // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _17 = ((*_12).3: usize);         // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageLive(_18);                // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _18 = ((*_10).1: usize);         // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _5 = Le(move _17, move _18);     // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_18);                // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_17);                // scope 7 at $SRC_DIR/core/src/cmp.rs:LL:COL
-         _3 = move _5;                    // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
-         StorageDead(_5);                 // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:40: +0:56
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
          StorageDead(_4);                 // scope 1 at $DIR/slice_filter.rs:+0:55: +0:56
-         switchInt(move _3) -> [0: bb2, otherwise: bb1]; // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
+         switchInt(move _5) -> [0: bb2, otherwise: bb1]; // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
      }
  
      bb6: {
-         _6 = const false;                // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
+         _0 = const false;                // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
          goto -> bb8;                     // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
      }
  
      bb7: {
-         StorageLive(_8);                 // scope 1 at $DIR/slice_filter.rs:+0:70: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:70: +0:76
          StorageLive(_19);                // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _19 = ((*_10).1: usize);         // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageLive(_20);                // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
          _20 = ((*_12).3: usize);         // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
-         _8 = Le(move _19, move _20);     // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
+         _0 = Le(move _19, move _20);     // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_20);                // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
          StorageDead(_19);                // scope 9 at $SRC_DIR/core/src/cmp.rs:LL:COL
-         _6 = move _8;                    // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
          goto -> bb8;                     // scope 1 at $DIR/slice_filter.rs:+0:60: +0:76
      }
  
      bb8: {
-         StorageDead(_8);                 // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
          StorageDead(_7);                 // scope 1 at $DIR/slice_filter.rs:+0:75: +0:76
-         _0 = move _6;                    // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
+         nop;                             // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
          goto -> bb3;                     // scope 1 at $DIR/slice_filter.rs:+0:40: +0:76
      }
  }
  
